Automatic network and device configuration for handheld devices based on bluetooth device proximity

ABSTRACT

A method, apparatus, and system for automatically configuring Bluetooth devices for communication to an outside network is described. A Bluetooth device is paired with a “trusted” Bluetooth device. When paired devices are found, the Bluetooth device automatically configures itself to use the lowest cost connection option from the available set of paired devices that are in proximity with the Bluetooth handheld device. If no device is found, the Bluetooth device may revert to a built-in access method. The network accessed can be the internet or an office network such as an 802.11 network.

CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE

Two other applications, by the same inventor and assigned to a common assignee, have been filed on the same date that contain similar disclosure in the area of Bluetooth devices. They are attorney docket numbers 16061US01, Ser. No. ______ and 16062US01, Ser. No. ______.

FIELD OF THE INVENTION

Certain embodiments of the invention provide for automatically configuring a Bluetooth device to connect to the Internet through the best available from a set of available Bluetooth devices that have access to the Internet or other wide area communications service. Aspects of the invention allow a user of a Bluetooth device to seamlessly maintain connectivity without having to manage connections to wider area services as the Bluetooth device moves from the proximity of, for example, a home computer with internet access that is paired with the Bluetooth device and into the proximity of, for example, a Bluetooth equipped personal automobile.

BACKGROUND OF THE INVENTION

More and more personal data is being stored on ever smaller and more mobile devices. As the amount of mobile data increases, so does the desire to maintain connectivity to wide area networks that can support user interaction and from which information can be accessed. Bluetooth devices have tremendous flexibility in terms of what devices they may connect to, but there is a need for transparent management of background connections to wider area services so that Bluetooth users do not have to constantly concern themselves with the correct and optimum operating mode for connecting to the internet. For example, a Bluetooth equipped PDA may access the internet through a local access point at the office, through a cell phone carried by the user on the street, through a paid subscription service in a personal auto, or through a home computer at home. Presently, each time a Bluetooth equipped device moves from one environment to the other, the user must reconfigure the communication settings to establish the best link for each environment.

Further limitations and disadvantages of conventional and traditional approaches to securing personal computing devices will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.

BRIEF SUMMARY OF THE INVENTION

Aspects of the invention may be found in a method and system for automatically detecting network availability and reconfiguring the handheld device based on the proximity of other Bluetooth devices, substantially as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.

These and other advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment will be more fully understood from the following description and drawings.

BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a diagram illustrating a basic Bluetooth® (BT) piconet with further connection to non-Bluetooth networks.

FIG. 2 is a simplified exemplary protocol stack.

FIG. 3 is a block diagram illustrating an exemplary Bluetooth® hardware implementation, that runs the protocol stack of FIG. 2, for example, in accordance with an exemplary embodiment of the present invention.

FIG. 4 is a flowchart showing one exemplary embodiment of the method of the invention, as implemented, for example, on a handheld Bluetooth device.

DETAILED DESCRIPTION OF THE INVENTION

Certain embodiments of the invention may be found in a method and system for detecting the proximity of Bluetooth devices with access to the Internet or a network. Certain embodiments of the invention may be found in a method and system for locating proximate Bluetooth® devices and selecting the lowest cost device for accessing the network. Additional embodiments perform these functions automatically based on the user's preferences.

Bluetooth wireless technology is set to revolutionize personal connectivity by providing freedom from wired connections. Bluetooth is a specification for a small form-factor, low-cost radio solution providing links between mobile computers, mobile phones and other portable and handheld devices. Of particular interest is Bluetooth's low power consumption and short range, coupled with the ability of Bluetooth devices to automatically detect and attach to other Bluetooth devices that are close by, typically within 10 meters or less, coupled with the ability to support reasonably high data rates in an environment where the local, Bluetooth piconet is used to access wider area networks.

About Bluetooth

Bluetooth wireless technology is an international, open standard for allowing intelligent devices to communicate with each other through wireless, short-range communications. This technology allows any sort of electronic equipment—from computers and cell phones to keyboards and headphones—to make its own connections, without wires, cables or any direct action from a user. Bluetooth is currently incorporated into numerous commercial products including laptops, PDAs, cell phones, and printers, with more products coming out every day.

How Bluetooth Works

Bluetooth is a frequency hopping spread spectrum (FHSS) radio system operating in the 2.4 GHz unlicensed band. Its low power transmissions allow a typical range of about 10 meters. Devices connect to each other to form a network known as a piconet, with up to seven active devices in the piconet. The maximum data throughput between devices is approximately 7823 kbps with the data capacity shared between devices on the piconet.

FIG. 1 shows a piconet 101 that includes three Bluetooth enabled devices: a headset 103, a laptop computer 105, and a cellular phone 107. Laptop 105 has a wireless radio 119 that allows it to access a local area network access point 109 using 802.11 protocols. Cellphone 107, which could also be a handheld PDA, has the ability to “dial” Internet 115 across airlink 111 using the public switched telephone network 113. LAN 123 will typically also have Internet 115 access through a gateway device 117. LAN 123 may have multiple non-Bluetooth devices associated with it, such as file server 121.

Bluetooth has a protocol stack to transfer data and implement the advanced features required by applications. The protocol stack consists of several different protocols designed for different purposes. The profiles, or applications, reside above the protocol stack. Bluetooth also has a lower protocol stack for link management and baseband control. FIG. 2 is a simplified exemplary protocol stack 201. The stack includes Profiles 203, a BTM 205, RFCOMM 207, SDP 209, L2CAP 211, HCI 213, and Lower Stack 215. The application layer 217 contains the computer programs that actually implement useful tools that take advantage of the Bluetooth functionality.

Bluetooth hardware implementations are typically highly integrated systems consisting of one or two chips. FIG. 3 is a block diagram illustrating an exemplary Bluetooth® hardware implementation, which includes a Radio IC 303 and a Baseband IC 305.

The Bluetooth baseband chip consists of a processor core such as an ARM7 with integrated memories 307, Bluetooth baseband 309, and several other peripherals. The radio is implemented in a separate chip 303. The ARM7 processor runs all the required software including a lower stack, an upper stack, and an embedded profile. This type of single CPU implementation allows for a small, low power, low cost solution.

The software “stack” contemplates the insertion of useful applications in the higher layers of the stack. These applications can be designed to take advantage of Bluetooth's lower layers to implement functionality based on Bluetooth radio links.

The short range nature of Bluetooth wireless networking allows it to be used to establish relative location by querying which known devices are available in the area. This can be used to automatically configure network access and other settings on handheld devices. For example, if a Bluetooth enabled handheld is used in an office environment, it could detect office bound devices like Bluetooth Network access points and automatically set them up to be used for internet access, directory services etc.—transparent to the user. When the user moves out of the office, but carries a Bluetooth enabled cellular phone, network access, directory access etc. can be switched over automatically to use dial-up networking through the cell phone instead.

Bluetooth standards specify a “pairing” procedure that allows one device to associate itself with another. Pairing is described in detail in the Bluetooth 1.2 core specification, Vol. 3, Section 3.3.

In an exemplary embodiment, a system utilizes at least two Bluetooth devices. Initially, the devices are not “paired.” Once devices are brought into proximity with each other, the owner can allow them to associate with each other. Once paired, the method of the invention can be employed to mark the paired device as a trusted device and configure the handheld device to use the wider network capabilities of the paired device. From then on, each device will then recognize the other and when the handheld discovers the paired device, the handheld will configure itself to use the communications facilities of that device based on the conditions set by the user. If no devices are found, the handheld can always revert to any built-in access mode, such as dial-up.

To configure, the user establishes a set of trusted devices and configures related settings. A trust relationship is established by exchanging Bluetooth link keys using the device pairing procedure and explicitly marking the device as trusted. Once such a relationship is established, the link is configured. Trusted devices could include cellular phones, desktop computers, laptop computers or specialty devices like Bluetooth key-chains. Once configured, the Bluetooth software on the handheld device performs periodic Bluetooth scans to detect trusted devices in the area, establish environments and then apply the configuration settings automatically based on the scan result. If multiple devices are found, the handheld or other Bluetooth device automatically determines the best possible network configuration. The best configuration is determined based on the relative speed or “cost” of the link.

The method may be extended beyond Bluetooth. Bluetooth may be used to establish device proximity, but once the device determines that the trusted device it is in proximity to has, for example, 802.11 capability as in an office LAN, the handheld Bluetooth device could be configured to switch to an 802.11 mode assuming that the handheld has that alternate communications ability.

The invention may be substantially integrated onto a chip, for example a Bluetooth chip, the chip having machine-readable storage having stored thereon a computer program having a code section for detecting the presence of other Bluetooth devices. The program may include at least one code section being executable by a machine for causing the machine to perform steps comprising those substantially as shown and described below.

The integrated circuit of the invention may also include an application layer that performs the methods of the invention. The integrated circuit is desirably connected to a Bluetooth radio. The integrated circuit may also have a unique hardware ID.

One exemplary embodiment of the method of the invention can be further understood in connection with FIG. 4, for example. In step 401, the handheld is configured for each paired device with a preferred mode of accessing the Internet or other network through the paired device. It is presumed that for each such device the handheld and the paired device have established a trusted relationship at some point in time. Each Bluetooth device can be manually paired with trusted devices using the Bluetooth pairing procedure. Once paired, the devices will recognize each others unique device ID which is built into all Bluetooth devices. It is contemplated that a manual pairing procedure will be done for each device the handheld might seek network access through.

As part of the setup and pairing process, the communication capabilities of the paired device are assessed. For each device, the link speed, type, and dollar cost are input to establish a virtual cost for each potential link. Any other configuration parameters unique to that particular combination are also defined, such as access numbers, codes, parity or error checking, timeouts, and any other parameters that need to be set for that particular link.

In step 403, it is presumed that an application in the handheld has requested Internet or network access. The handheld uses the Bluetooth “Inquiry” mode to determine if any trusted, preferred Bluetooth device is in range with an inquiry scan. An inquiry scan takes approximately eight seconds and allows each Bluetooth device to discover the unique identifier of nearby Bluetooth devices. Any other configuration parameters unique to that particular combination are also defined, such as access numbers, codes, parity or error checking, timeouts, and any other parameters that need to be set for that particular link.

In step 405, the handheld determines whether any preferred devices are present. If they are, then for each such device, the handheld chooses the best network access method in step 407 based on the known capabilities of each discovered device based on connection cost, speed, and quality of service. Each parameter for each discovered device is ranked by speed, link type, and dollar cost. Based on user input preferences for the relative weight to be given each parameter, the lowest virtual cost link is chosen. For example, the user could configure the selection algorithm to always select the fastest link, giving zero weight to cost. Or, the software could be weighted to always use “free” links first, and only use “costly” links when free links are not available.

Once the best device is chosen, then in step 409 the handheld will configure the network connection to use the determined method, whether it be proxy, VPN, or dial up network. The configuration is preferably automatic, relieving the user of the burden of selecting an access method and configuring the settings to use that method.

If no device is found, or if a device is found and the network connection is successfully configured, the handheld executes a delay 411 before performing the next scan 403. The delay prevents the handheld from performing excessive scans and configuration/reconfiguration thus draining the battery.

The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims. 

1. A method of connecting a Bluetooth device to a network comprising: a. pairing a first Bluetooth device and a second Bluetooth device; b. designating communication configuration parameters for use by said first Bluetooth device in connecting to a wide area network through said second Bluetooth device; c. determining when said first Bluetooth device is in proximity with said second Bluetooth device, and; d. automatically configuring said first and second Bluetooth devices to set up a network connection for said first Bluetooth device.
 2. The method of claim 1 comprising pairing said first Bluetooth device with a plurality of second Bluetooth devices.
 3. The method of claim 2 wherein said first Bluetooth device chooses from said plurality of second Bluetooth devices based on which device has the lowest virtual cost link.
 4. The method of claim 1 wherein said network connection is an Internet connection.
 5. The method of claim 1 wherein said network connection is a connection to an 802.11 network.
 6. The method of claim 3 wherein said network connection is an Internet connection.
 7. The method of claim 3 wherein said network connection is a connection to an 802.11 network.
 8. The method of claim 1 wherein if no paired device is in proximity, said first Bluetooth device selects a mode based on the built in capabilities of said first Bluetooth device.
 9. A system for automatically connecting a Bluetooth device to a network, comprising two paired Bluetooth devices, wherein a first one of said devices is configured with the capabilities of said second device for connecting said first device to a network, and wherein said first device is automatically configured to use the access mode of said second device when said first and second devices are in proximity to each other.
 10. The system of claim 9, wherein the system includes a plurality of second devices.
 11. The system of claim 10, wherein the first device connects to the network through the second device that has the lowest virtual cost.
 12. The system of claim 9, wherein the network is the internet.
 13. The system of claim 9, wherein the network is an 802.11 network.
 14. The system of claim 11, wherein the network is the internet.
 15. The system of claim 11, wherein the network is an 802.11 network.
 16. The system of claim 9, wherein the first device connects to said network using a built-in access mode if no said second device is found.
 17. An integrated circuit, said integrated circuit including an application layer that performs the method comprising: a. pairing a first Bluetooth device and a second Bluetooth device; b. designating communication configuration parameters for use by said first Bluetooth device in connecting to a wide area network through the second Bluetooth device; c. determining when said first Bluetooth device is in proximity with said second Bluetooth device, and; d. automatically configuring said first and second Bluetooth devices to set up a network connection for said first Bluetooth device.
 18. The integrated circuit of claim 17, wherein the integrated circuit is paired with a plurality of second Bluetooth devices.
 19. The integrated circuit of claim 18, wherein said integrated circuit chooses the lowest cost connection from among said plurality of second Bluetooth devices.
 20. The integrated circuit of claim 17, wherein said integrated circuit selects a built in communication mode in the event that none of said plurality of second Bluetooth devices are found.
 21. The integrated circuit of claim 17, wherein the network is the internet.
 22. The integrated circuit of claim 17, wherein the network is an 802.11 network. 